Traditional tools available to graphic artists include pencils and pens (generally producing substantially uniform lines) and bushes or airbrushes, producing a controllably non-uniform line, variable by varying the pressure and/or speed applied to the tool.
In addition to being represented in electronic form, images may now be represented in electronic form, in which the image is displayed on a cathode ray tube device or similar apparatus.
The cathode ray itself may be manipulated in response to vectors which trace the outline of an object, producing images which may be referred to as skeletons or wire frames. Vector systems of this type have advantages in that they are memory efficient and may generate image data at a definition which is independent of the definition of the display device. Alternatively, images may be produced on a cathode ray tube by raster scanning techniques, in which the whole of the screen is scanned periodically and the intensity of the cathode ray is modified in response to image data. Raster scanning in this way is employed in television systems and raster scan monitors are readily available.
An advantage of the raster scanning approach is that pixel values may be stored in a frame store representing not only the outline of the image but also the overall colour and texture of the image. Thus, very realistic images may be produced and the amount of storage required to store an image is not dependent upon the level of detail within the image itself. Images stored in framestores in forms compatible with television standards are attractive to the video industry and allow artists to generate graphics for use in television programs. Systems of this type are disclosed in British patent 2059525 which relates to machines manufactured and sold by Quantel Limited under the trade mark "PAINTBOX". The art of manipulating pixel values within a framestore is commonly referred to "video graphics".
With a video graphics system, an operator selects the characteristics of the graphics tool he wishes to imitate and then manipulates a pressure sensitive stylus over a digitising pad to input a desired line. As the stylus is moved over the tablet, the apparatus senses the stylus position and the pressure applied thereto, reads image data from a corresponding mapped area of an image store (e.g a frame buffer) modifies the data in accordance with the sensed pressure, and writes it back into the store. The system is arranged and intended to simulate conventional graphics tools, such as pencil paintbrush or airbrush, and the artist exerts control over the parameters of the line "drawn" in the image store in the same way, so that the width and other attributes of the line are controlled as the stylus moves. Thus, the stored image data comprises a direct representation of the line itself, corresponding to a manually painted line.
A problem with video graphics systems is that much of the image manipulation can only be done in response to operator commands. The image data is stored in a form which can be understood by a human operator and not in a form which can be easily understood by a machine. Consequently, machine manipulation of the image data is difficult.
In computer graphics, as distinct from video graphics, image data is stored in machine readable form and final images are produced on a frame by frame basis in a process known as rendering. Complex computer graphics algorithms are known, capable of producing very impressive images. However, the rendering process may take several hours to complete, even when running on very fast machines. Such a situation may be acceptable when producing glossy one off images but in many applications such a demand on computer time is unacceptable and cannot compete with human operation.
An example of an operation in which a large number of images must be produced at reasonable cost is animation. Conventionally, an animator produces a series of key frames as very rough pencil sketches. The animators skill is that of being able to work in the temporal domain. Other artists are then required to complete each of the key frames and, furthermore, to create inbetween frames, thereby providing sufficient frames such that, when shown as a sequence at sufficient speed, smooth movement of characters is perceived by a viewer.
It is known in computer graphics to represent objects as parametric curves, the curve shape being specified and controlled by data representing the positions of points on the curve and the tangents thereat; as disclosed in, for example, "Interactive Computer Graphics", P Burger and D Gillies, 1989, Addison Wesley, ISBN 0-201-17439-1.
In "Hairy Brushes", Strassman, 1986 Siggraph Conference Proceedings (Vol 20, No 4, Page 225-232), a system for emulating paintbrushes of a particular kind is described in which a brush stroke is first defined by data specifying the linear trajectory of the brush (as point positions and tangents), and the pressure applied to the brush (which in turn specifies the width of the stroke normal to the line running along the trajectory), and then the colour profile laterally across the brush stroke is specified by the user defining a profile of individual bristle colours laterally across the brush stroke. It is suggested that profiles could be defined at the start and end of the stroke, and the colour profile along the stroke be interpolated from the end values.
As that system is intended to simulate particular types of existing brush, it makes a distinction between properties of the stroke (its trajectory and its pressure--dictated width) and those of the brush (its colour profile).
W084/02993 shows a system for generating images, in which an image path is dictated by Bezier control points. It is possible to vary the width of the entire stroke defined by the path, as a whole, but not to provide a varying width along the stroke; the object of that proposal is to create a stroke of uniform width.
U.S. Pat. No. 4,897,638 shows an image processing system in which it is possible to specify a varying stroke width, but only at the control points used to specify the curvature of the path.